Apache ActiveMQ একটি ওপেন সোর্স মেসেজ ব্রোকার, যা Java Message Service (JMS) প্রোটোকল সাপোর্ট করে এবং মেসেজিং সিস্টেমের জন্য ব্যবহৃত হয়। ActiveMQ Management API আপনাকে অ্যাপাচি অ্যাকটিভএমকিউ ব্রোকারের কার্যক্রম পর্যবেক্ষণ এবং পরিচালনা করতে সহায়তা করে। এই API এর মাধ্যমে আপনি কিউ, টপিক, প্রডিউসার, কনজিউমার, স্ট্যাটিস্টিক্স, মেসেজ প্রেরণ এবং গ্রহণ ইত্যাদি কার্যক্রম পরিচালনা এবং মনিটর করতে পারবেন।
ActiveMQ এর Management API মূলত JMX (Java Management Extensions) অথবা REST API এর মাধ্যমে ব্যবহৃত হয়, যা আপনাকে অ্যাপাচি অ্যাকটিভএমকিউ সার্ভারের অবস্থা এবং কনফিগারেশন মনিটর করতে এবং ম্যানেজ করতে সক্ষম করে।
JMX হল একটি Java প্রযুক্তি যা অ্যাপ্লিকেশন, ডিভাইস এবং সার্ভিসগুলোর জন্য ম্যানেজমেন্ট এবং মনিটরিং সিস্টেম তৈরি করতে ব্যবহৃত হয়। ActiveMQ JMX API ব্যবহার করে, আপনি ActiveMQ ব্রোকারের বিভিন্ন স্ট্যাটিস্টিক্স এবং কনফিগারেশন দেখতে এবং ম্যানেজ করতে পারেন।
ActiveMQ JMX API অ্যাকটিভএমকিউ ইনস্ট্যান্সের বিভিন্ন মেট্রিক্স এবং কার্যক্রমকে এক্সপোজ করে, যেমন:
JConsole দিয়ে ActiveMQ মনিটর করা:
jconsole
কমান্ড চালান।service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
) অ্যাড করুন।ActiveMQ REST API ব্যবহারের মাধ্যমে, আপনি HTTP অনুরোধ পাঠিয়ে ব্রোকার পরিচালনা এবং মনিটরিং করতে পারেন। এটি সাধারণত মেসেজ প্রেরণ বা গ্রহণ করার জন্য ব্যবহৃত হয়, তবে এটি কিউ, টপিক, প্রডিউসার এবং কনজিউমার সম্পর্কিত তথ্য এবং অবস্থা দেখার জন্যও ব্যবহার করা যেতে পারে।
ActiveMQ এর REST API ডিফল্টভাবে 8161 পোর্টে চালু থাকে। উদাহরণস্বরূপ:
http://localhost:8161/api/
ActiveMQ REST API ব্যবহার করে কিউ এবং টপিক সম্পর্কিত বিভিন্ন কাজ করা যেতে পারে, যেমন মেসেজ পাঠানো, কিউ স্ট্যাটাস দেখা, এবং কিউ বা টপিক থেকে মেসেজ গ্রহণ করা।
ActiveMQ REST API ব্যবহার করে কিউতে মেসেজ পাঠাতে নিচের HTTP POST অনুরোধ পাঠানো যায়:
POST http://localhost:8161/api/message/queue/testQueue?type=queue
Content-Type: application/json
{
"body": "Hello from ActiveMQ REST API"
}
এখানে:
আপনি ActiveMQ REST API ব্যবহার করে কিউ স্ট্যাটাসও দেখতে পারেন:
GET http://localhost:8161/api/queues
এই অনুরোধটি সমস্ত কিউয়ের তালিকা এবং তাদের অবস্থা (যেমন মেসেজ সংখ্যা) রিটার্ন করবে।
আপনি টপিকেও মেসেজ পাঠাতে পারবেন, যেভাবে কিউতে পাঠানো হয়:
POST http://localhost:8161/api/message/topic/testTopic?type=topic
Content-Type: application/json
{
"body": "Message sent to topic"
}
এখানে:
ActiveMQ REST API এর মাধ্যমে কিউ স্ট্যাটাস দেখার উদাহরণ:
GET http://localhost:8161/api/queues/testQueue
এই রিকোয়েস্টের মাধ্যমে, আপনি কিউয়ের বর্তমান স্ট্যাটাস দেখতে পারবেন, যেমন:
কিছু ক্ষেত্রে আপনাকে ActiveMQ এর web.xml
বা activemq.xml ফাইলে কিছু কনফিগারেশন পরিবর্তন করতে হতে পারে, যেমন API বা JMX অ্যাক্সেস সক্ষম করা। নিচে একটি উদাহরণ দেওয়া হলো:
<security>
<authorizationPlugin>
<simpleAuthorizationMap>
<authorizationEntries>
<authorizationEntry queue=">" read="admin" write="admin, user" />
<authorizationEntry topic=">" read="admin, user" write="admin" />
</authorizationEntries>
</simpleAuthorizationMap>
</authorizationPlugin>
</security>
এখানে, read এবং write পারমিশন দেয়া হচ্ছে নির্দিষ্ট ইউজারদের জন্য।
ActiveMQ-এর JMX API ব্যবহার করে আপনি ব্রোকারের পারফরম্যান্স, মেমরি ব্যবহারের পরিমাণ, মেসেজ ডেলিভারি রেট, কিউ সাইজ ইত্যাদি স্ট্যাটিস্টিক্স দেখতে পারেন। এটি বিশেষভাবে বড় সিস্টেমে মনিটরিং এবং টিউনিংয়ের জন্য উপযোগী।
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
ActiveMQ Management API অ্যাপাচি অ্যাকটিভএমকিউ ব্রোকারের কার্যক্রম মনিটর এবং পরিচালনা করার জন্য একটি অত্যন্ত শক্তিশালী টুল। আপনি JMX, REST API, এবং JConsole ব্যবহার করে বিভিন্ন ব্রোকারের স্ট্যাটিস্টিক্স, কিউ, টপিক, কনজিউমার, প্রডিউসার ইত্যাদি ম্যানেজ এবং মনিটর করতে পারেন। এই API ব্যবহারের মাধ্যমে, অ্যাকটিভএমকিউ ব্রোকারের পারফরম্যান্স ট্র্যাক এবং প্রয়োজনীয় কনফিগারেশন পরিবর্তন করা সহজ হয়।
common.read_more